/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package UHF;

/**
 * 提供的底层方法，需要将ddl导入到项目的lib下
 * @author zoudeyong
 */
public class Reader18 {

    //连接到指定串口
    public native int[] OpenComPort(int[]arr);
    public native int[] AutoOpenComPort(int[]arr);
    public native int CloseComPort();
    //连接网口
    public native int[] OpenNetPort(int addr,int Port,String IPaddr);
    public native int CloseNetPort(int Port);
    //关闭网口
    public native int CloseSpecComPort(int Frmhandle);
    public native int[] GetReaderInformation(int[]arr);
    public native int SetWGParameter(int[]arr);
    //读取主动模式数据
    public native int[] ReadActiveModeData(int[]arr);
    public native int SetWorkMode(int[]arr);
    public native int[] GetWorkModeParameter(int[]arr);
    public native int BuzzerAndLEDControl(int[] arr);
    //写入读写器地址
    public native int WriteComAdr(int[] arr);
    //设置读写器功率
    public native int SetPowerDbm(int[] arr);
    //设置读写器工作频率
    public native int Writedfre(int[] arr);
    //设置串口波特率
    public native int Writebaud(int[] arr);
    public native int WriteScanTime(int[] arr);
    public native int SetAccuracy(int[] arr);
    public native int SetRedLED(int[] arr);
    public native int SetGreenLED(int[] arr);
    public native int[] GetLEDStatus(int[] arr);

    //G2询查命令.询查命令的作用是检查有效范围内是否有符合协议的电子标签存在。
    public native int[] Inventory_G2(int[]arr);
    //G2读取数据命令
    //功能描述：
    //这个命令读取标签的整个或部分保留区、EPC存储器、TID存储器或用户存储器中的数据。从指定的地址开始读，以字为单位。
    public native int[] ReadCard_G2(int[]arr);
    //G2写命令
    //功能描述：
    //这个命令可以一次性往保留内存、EPC存储器、TID存储器或用户存储器中写入若干个字。
    public native int[] WriteCard_G2(int[]arr);
    public native int[] EraseCard_G2(int[]arr);
    public native int[] SetCardProtect_G2(int[]arr);
    public native int[] DestroyCard_G2(int[]arr);
    //G2写EPC号命令
    //功能描述：
    //这个命令向电子标签写入EPC号。写入的时候，天线有效范围内只能有一张电子标签。
    public native int[] WriteEPC_G2(int[]arr);
    public native int[] SetReadProtect_G2(int[]arr);
    public native int[] SetMultiReadProtect_G2(int[]arr);
    public native int[] RemoveReadProtect_G2(int[]arr);
    public native int[] CheckReadProtected_G2(int[]arr);
    public native int[] SetEASAlarm_G2(int[]arr);
    public native int[] CheckEASAlarm_G2(int[]arr);
    public native int[] LockUserBlock_G2(int[]arr);

    //18000_6B
    public native int[] Inventory_6B(int[]arr);
    public native int[] inventory2_6B(int[]arr);
    public native int[] ReadCard_6B(int[]arr);
    public native int[] WriteCard_6B(int[]arr);
    public native int[] LockByte_6B(int[]arr);
    public native int[] CheckLock_6B(int[]arr);
    
    //public native int SetRelay(int[]arr);
    
    public static void main(String[] args) {
        // TODO code application logic here
    }

}
